package com.ly.heart.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 采购订单其他信息对象 erp_order_other
 *
 * @author cxl
 * @date 2024-06-23
 */
@TableName ("erp_order_other")
@ApiModel (value = "采购订单其他信息", description = "采购订单其他信息")
@Data
public class OrderOtherEntity{

        /** 主键id */
        @TableId (type = IdType.INPUT)
        private String id;

        /** 采购订单id */
        @ApiModelProperty ("采购订单id")
        @TableField ("order_id")
        @Excel (name = "采购订单id")
        private String orderId;

        /** 物料id */
        @ApiModelProperty ("物料id")
        @TableField ("material_id")
        @Excel (name = "物料id")
        private String materialId;

        /** 物料编码 */
        @ApiModelProperty ("物料编码")
        @TableField ("material_code")
        @Excel (name = "物料编码")
        private String materialCode;

        /** 物料名称 */
        @ApiModelProperty ("物料名称")
        @TableField ("material_name")
        @Excel (name = "物料名称")
        private String materialName;

        /** 业务关闭 */
        @ApiModelProperty ("业务关闭")
        @TableField ("business_close")
        @Excel (name = "业务关闭")
        private String businessClose;

        /** 业务冻结 */
        @ApiModelProperty ("业务冻结")
        @TableField ("business_freeze")
        @Excel (name = "业务冻结")
        private String businessFreeze;

        /** 冻结人 */
        @ApiModelProperty ("冻结人")
        @TableField ("freeze_name")
        @Excel (name = "冻结人")
        private String freezeName;

        /** 冻结日期 */
        @ApiModelProperty ("冻结日期")
        @TableField ("freeze_time")
        @JsonFormat (pattern = "yyyy-MM-dd")
        @Excel (name = "冻结日期", width = 30, dateFormat = "yyyy-MM-dd")
        private Date freezeTime;

        /** 业务终止 */
        @ApiModelProperty ("业务终止")
        @TableField ("business_stop")
        @Excel (name = "业务终止")
        private String businessStop;

        /** 终止人 */
        @ApiModelProperty ("终止人")
        @TableField ("stop_name")
        @Excel (name = "终止人")
        private String stopName;

        /** 终止日期 */
        @ApiModelProperty ("终止日期")
        @TableField ("stop_time")
        @JsonFormat (pattern = "yyyy-MM-dd")
        @Excel (name = "终止日期", width = 30, dateFormat = "yyyy-MM-dd")
        private Date stopTime;

        /** 累计收料数量 */
        @ApiModelProperty ("累计收料数量")
        @TableField ("total_material_received_num")
        @Excel (name = "累计收料数量")
        private String totalMaterialReceivedNum;

        /** 剩余收料数量 */
        @ApiModelProperty ("剩余收料数量")
        @TableField ("surplus_material_received_num")
        @Excel (name = "剩余收料数量")
        private String surplusMaterialReceivedNum;

        /** 累计入库数量 */
        @ApiModelProperty ("累计入库数量")
        @TableField ("total_inbound_num")
        @Excel (name = "累计入库数量")
        private String totalInboundNum;

        /** 剩余入库数量 */
        @ApiModelProperty ("剩余入库数量")
        @TableField ("surplus_inbound_num")
        @Excel (name = "剩余入库数量")
        private String surplusInboundNum;

        /** 累计退料数量 */
        @ApiModelProperty ("累计退料数量")
        @TableField ("total_material_return_num")
        @Excel (name = "累计退料数量")
        private String totalMaterialReturnNum;

        /** 收料可退数量 */
        @ApiModelProperty ("收料可退数量")
        @TableField ("material_received_return_num")
        @Excel (name = "收料可退数量")
        private String materialReceivedReturnNum;

        /** 库存可退数量 */
        @ApiModelProperty ("库存可退数量")
        @TableField ("inventory_return_num")
        @Excel (name = "库存可退数量")
        private String inventoryReturnNum;

        /** 是否配额生成 */
        @ApiModelProperty ("是否配额生成")
        @TableField ("is_quota_generation")
        @Excel (name = "是否配额生成")
        private String isQuotaGeneration;

        /** 业务流程 */
        @ApiModelProperty ("业务流程")
        @TableField ("business_process")
        @Excel (name = "业务流程")
        private String businessProcess;

        /** 源单类型 */
        @ApiModelProperty ("源单类型")
        @TableField ("source_doc_type")
        @Excel (name = "源单类型")
        private String sourceDocType;

        /** 源单单号 */
        @ApiModelProperty ("源单单号")
        @TableField ("source_doc_code")
        @Excel (name = "源单单号")
        private String sourceDocCode;

        /** 合同单号 */
        @ApiModelProperty ("合同单号")
        @TableField ("contracts_code")
        @Excel (name = "合同单号")
        private String contractsCode;

        /** 需求跟踪号 */
        @ApiModelProperty ("需求跟踪号")
        @TableField ("require_tracking_code")
        @Excel (name = "需求跟踪号")
        private String requireTrackingCode;

        /** 计划跟踪号 */
        @ApiModelProperty ("计划跟踪号")
        @TableField ("plan_tracking_code")
        @Excel (name = "计划跟踪号")
        private String planTrackingCode;

        /** 变更标志 */
        @ApiModelProperty ("变更标志")
        @TableField ("update_flag")
        @Excel (name = "变更标志")
        private String updateFlag;

        /** 需求来源 */
        @ApiModelProperty ("需求来源")
        @TableField ("require_from")
        @Excel (name = "需求来源")
        private String requireFrom;

        /** 需求单据编号 */
        @ApiModelProperty ("需求单据编号")
        @TableField ("require_doc_code")
        @Excel (name = "需求单据编号")
        private String requireDocCode;

        /** 需求单据行号 */
        @ApiModelProperty ("需求单据行号")
        @TableField ("require_doc_line_code")
        @Excel (name = "需求单据行号")
        private String requireDocLineCode;

        /** 计划确认 */
        @ApiModelProperty ("计划确认")
        @TableField ("is_plan_confirm")
        @Excel (name = "计划确认")
        private String isPlanConfirm;

        /** 创建人 */
        @ApiModelProperty ("创建人")
        @TableField ("user_id")
        @Excel (name = "创建人")
        private String userId;

        @ApiModelProperty ("创建时间")
        @JsonFormat ( pattern = "yyyy-MM-dd HH:mm:ss" )
        @TableField ("create_time")
        private Date createTime;

        /** 更新时间 */
        @ApiModelProperty ("更新时间")
        @TableField ("change_time")
        @JsonFormat ( pattern = "yyyy-MM-dd HH:mm:ss" )
        @Excel (name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
        private Date changeTime;

        /** $column.columnComment */
        @ApiModelProperty ("逻辑删除")
        @TableField ("is_used")
        @Excel (name = "逻辑删除")
        private Integer isUsed;

}
